草庐IT

c++ - bisonc++ 多态继承

全部标签

c# - 为什么 C# 类可以隐式和显式地从一个接口(interface)继承?

今天偶然发现一个C#类可以隐式和显式继承一个接口(interface)。这让我很吃惊。如果C#以这种方式工作,那么当以不同方式引用时,一个实例可能会有不同的行为。interfaceIFoo{voidDoSomething();}classFoo:IFoo{#regionIFooMemberspublicvoidDoSomething(){Console.WriteLine("dosomethingimplicitly");}#endregion#regionIFooMembersvoidIFoo.DoSomething(){Console.WriteLine("dosomethinge

c# - 如何在 C# 中覆盖继承的类属性?

我学会了如何通过向基类中的方法添加virtual并在新类中添加override来继承方法。但是我该怎么做才能继承属性呢?classbird{privatevirtualstringfly="Yes,Ican!";publicstringCanI(){returnfly;}}classpenguin:bird{privateoverridestringfly="No,Ican't!";}这会弹出一个错误,说明不应在此处使用修饰符virtual/override。 最佳答案 fly不是一个属性,它是一个字段。字段不可覆盖。你可以这样做:

C#继承。从基类派生类

我有一个基类publicclassA{publicstrings1;publicstrings2;}我还有一个派生类:publicclassB:A{publicstrings3;}假设我的程序创建了一个类A的实例。AaClassInstance=newA();设置了一些参数:aClassInstance.s1="string1";aClassInstance.s2="string2";此时我想创建一个类B的实例。但我希望B已经具有我的类A实例的值。这没有用:publicBbClassInstance=newB():bClassInstance=(B)aClassInstance;这也没

C#.NET - 如何让 typeof() 与继承一起工作?

我将从用代码解释我的场景开始:publicclassA{}publicclassB:A{}publicclassC:B{}publicclassD{}publicclassTest{privateAa=newA();privateBb=newB();privateCc=newC();privateDd=newD();publicTest(){//Evaluatesto"false"if(a.GetType==typeof(B)){}//TODO:AddLogic//Evaluatesto"true"if(b.GetType==typeof(B)){}//TODO:AddLogic//I

C#:通过反射访问继承的私有(private)实例成员

我是C#反射方面的绝对新手。我想使用反射来访问类中的所有私有(private)字段,包括继承的那些。我已成功访问所有私有(private)字段(继承的字段除外),以及所有公共(public)和protected继承字段。但是,我无法访问私有(private)的、继承的字段。以下示例说明:classA{privatestringa;publicstringc;protectedstringd;}classB:A{privatestringb;}classtest{publicstaticvoidMain(string[]Args){Bb=newB();Typet;t=b.GetType(

c# - 如何用像 C# 这样好的但多继承截肢的语言解决 "Must be MarshalByRefObject"?

如何在像C#这样的多继承截断语言中解决“必须是MarshalByRefObject”?问题很简单,在某些情况下你只需要继承这个类(基础设施要求)。在这里真的无关紧要,哪种情况。那么,如果您已经从其他类(您的域模型要求)继承了该类,您会怎么做?顺便说一句,好的应用程序框架,如spring.net,总是确保您不必继承此类,无论您需要将哪种基础架构应用于您的类。我想知道为什么我在这里得到-3票??:) 最佳答案 一般来说,如果您要在远程处理/WCF上下文中使用它,您只想创建一个对象MarshalByRef。这通常是一种足够特殊的情况,不会

c# - 在 MSTest 中忽略从通用基类继承的测试类

在MSTest中创建通用基测试类并从中继承时,我无法运行所有继承类的测试。BaseDependencyPropertyFactoryTest位于Whathecode.PresentationFramework.Tests程序集中。它是通用基类。(BaseDependencyPropertyFactoryTest)两个程序集都有一个继承自该基类的测试,称为DependencyPropertyFactoryTest。继承类所做的只是传递一个特定类型的参数。[TestClass]publicclassDependencyPropertyFactoryTest:BaseDependencyPr

javascript - javascript中的原型(prototype)继承概念作为基于原型(prototype)的语言

你知道Javascript是一个prototype-basedprogramminglanguage.我读过一些关于Javascript及其原型(prototype)继承概念的书籍,但是:“如果你不能向一个6岁的child解释它,那么你自己真的不明白。”。好吧,我试图向一个22岁的friend解释JavaScript原型(prototype)概念,但完全失败了!你会如何向一个对该主题异常感兴趣的6岁child解释它?我在StackOverflow中看到了一些例子,但没有帮助。 最佳答案 经典继承是关于扩展事物的类型。假设您有一个类,

javascript - Angularjs 将变量传递给具有继承(非隔离)范围的指令

如果我使用的是独立作用域,我可以通过属性传递变量。即然后,在指令的Javascript上.directive('myDirective',function(){return{scope:{'baz':'='}}});有什么方法可以对继承范围做类似的事情吗?链接函数只是传递字符串。现在我正在自己解析变量并将其与scope.$parent匹配。似乎应该有一个辅助函数或更简单的方法来做到这一点。 最佳答案 使用$eval或$parse:.directive('myDirective',function($parse){return{sco

javascript - 在基于原型(prototype)继承的语言中使用类

followinganswertothisquestion很好地解释了经典继承和原型(prototype)继承之间的区别。我很想了解这一点,因为我开始使用Java,但后来转向了Javascript。在他的回答中,他针对原型(prototype)继承指出,“所有关于类的业务都消失了。如果你想要一个对象,你只需编写一个对象。”但是有这么多文档和questions关于如何在Javascript中“编写类”。为什么要插入这种语言成为它不是的东西。我正在寻找在JS应用程序中使用类在这种原型(prototype)语言中更明智的情况的具体示例,以及笨拙地将方钉插入圆孔的好处。正如Aravind所说,